Method and system for discovering dynamic relations among entities

ABSTRACT

Method, system, and programs for detecting dynamic relationship and discovering dynamic events. Data from a first data source is first received. At least one dynamic relation candidate is identified and each dynamic relation candidate involves multiple entities. The at least one dynamic relation candidate is identified based on temporal properties with respect to the entities exhibited in the data from the first data source. Dynamic relations are then extracted by corroborating the temporal properties of the entities involved in the at least one dynamic relation candidate with that of the same entities exhibited in data from a second data source. Then, a dynamic event that gives rise to the dynamic relations among different entities is detected.

BACKGROUND

1. Technical Field

The present teaching relates to methods, systems and programming foridentifying dynamic information based on content. Particularly, thepresent teaching is directed to methods, systems, and programming foridentifying dynamic relations among different entities.

2. Discussion of Technical Background

The advancement in the world of the Internet has made it possible tomake a tremendous amount of information accessible to users locatedanywhere in the world. With the explosion of information, new issueshave arisen. First, much effort has been put in organizing the vastamount of information to facilitate the search for information in a moreeffective and systematic manner. Along that line, different techniqueshave been developed to automatically or semi-automatically categorizecontent on the internet into different topics and organize them in an,e.g., hierarchical fashion. Imposing organization and structure oncontent has led to more meaningful search and promoted more targetedcommercial activities. For example, by categorizing a piece of contentinto a class with a designated topic or interest often greatlyfacilitates the selection of advertisement information that is more onthe point and relevant.

Another important issue arising out of the massively available contenthas to do with how to spot useful information out of massively availablecontent. For example, one may identify a string of events associatedwith some individual to form a summary of the person's activities intime. As another example, the relationship between entities, whetherindividuals or business organizations, may also be of interest. Toachieve that, content can be analyzed and various types of informationcan b abstracted through such analysis. Existing approaches to relationextraction have been largely focused on identifying a pre-defined setand/or types of relations or determining statistical associationsbetween instances of predefined attributes. Although useful in certainsituations/applications, the conventional approaches are not capable ofdetecting or discovering relations that emerge dynamically and/or arenot a pre-defined type.

In the real world, many relations are formed dynamically over time andoften concurrent with the emergence of some events. Such dynamicrelations usually can not be pre-defined. For example, the followingexcerpt reported a piece of news related to some incident:

-   -   On Mar. 1, 2009, the U.S. Coast Guard reported that a 21-foot        fishing boat was missing off the Gulf Coast near Clearwater        Pass, Fla. The boat was reportedly carrying four passengers,        including Corey Smith, a former North Carolina State football        player, Marguis Cooper, a member of the Oakland Raiders; as well        as Nick Schuyler and Will Bleakley, former University of South        Florida football players. The search and rescue effort started        on March 1 and ended a day later when Schuyler was discovered        clinging to the overturned boat and others gone missing. The        incident stayed in the national news media for many days because        of the victims' connection with the NFL.

The four people mentioned in the above news report are clearly relatedbecause of their involvement in the boat incident. However, theconventional approach can not detect the connection among these peoplebecause such relations are dynamic or transitory in nature and are notpre-defined. Unfortunately, many relations emerging from daily life orevents are dynamic in nature and are not of a pre-defined type.Therefore, there is a need to develop techniques to discover dynamicrelations among entities based on accessible information.

SUMMARY

The teachings disclosed herein relate to methods, systems, andprogramming for content processing. More particularly, the presentteaching relates to methods, systems, and programming for discoveringdynamic relations among entities.

In one example, a method, implemented on a machine having at least oneprocessor, storage, and a communication platform connected to a networkfor identifying dynamic relationship and discovering dynamic events isdisclosed. Data from a first data source is first received via thecommunication platform. At least one dynamic relation candidate, each ofwhich involves a plurality of entities, is identified, by a dynamicrelation candidate detector, based on temporal properties with respectto the one or more entities exhibited in the data from the first datasource. A dynamic relation extractor extracts dynamic relations bycorroborating the temporal properties of the entities involved in the atleast one dynamic relation candidate with that of the same entitiesexhibited in data from a second data source. Then, a dynamic event thatgives rise to the dynamic relations among different entities is thendetected by a dynamic event detector.

In another example, a system for detecting a dynamic relations anddiscovering a dynamic event is disclosed, which includes a networkcommunication platform connected to a network, through which data from afirst data source can be obtained, a dynamic relation candidate detectorand a dynamic relation extractor. The dynamic relation candidatedetector is configured for identifying at least one dynamic relationcandidate, each of which involves a plurality of entities, based ontemporal properties with respect to the one or more entities exhibitedin the data from the first data source. The dynamic relation extractoris configured for extracting dynamic relations by corroborating thetemporal properties of the entities involved in the at least one dynamicrelation candidate with that of the same entities exhibited in data froma second data source. The system also includes a dynamic event detectorconfigured for detecting a dynamic event that gives rise to theextracted dynamic relations.

In yet another example, a machine readable non-transitory and tangiblemedium having information recorded thereon for detecting a dynamicrelation and discovering a dynamic event. The recorded information, whenread by the machine, causes the machine to perform functions includingreceiving data from a first data source, identifying at least onedynamic relation candidate, each of which involves a plurality ofentities, based on temporal properties with respect to the one or moreentities exhibited in the data from the first data source, extractingdynamic relations by corroborating the temporal properties of theentities involved in the at least one dynamic relation candidate withthat of the same entities exhibited in data from a second data source,and detecting a dynamic event that gives rise to the dynamic relationsamong different entities.

Other concepts relate to software for implementing the detection ofdynamic relationships and discovering dynamic events. A softwareproduct, in accord with this concept, includes at least onemachine-readable non-transitory medium and information carried by themedium. The information carried by the medium may be executable programcode data regarding parameters in association with a request oroperational parameters, such as information related to a user, arequest, or a social group, etc.

Additional advantages and novel features will be set forth in part inthe description which follows, and in part will become apparent to thoseskilled in the art upon examination of the following and theaccompanying drawings or may be learned by production or operation ofthe examples. The advantages of the present teachings may be realizedand attained by practice or use of various aspects of the methodologies,instrumentalities and combinations set forth in the detailed examplesdiscussed below.

BRIEF DESCRIPTION OF THE DRAWINGS

The methods, systems and/or programming described herein are furtherdescribed in terms of exemplary embodiments. These exemplary embodimentsare described in detail with reference to the drawings. Theseembodiments are non-limiting exemplary embodiments, in which likereference numerals represent similar structures throughout the severalviews of the drawings, and wherein:

FIG. 1 provides an exemplary depiction of how entities are connected viadynamic relations formed at different times along a time line;

FIG. 2 is a high level depiction of a system for discovering dynamicrelations among entities, according to an embodiment of the presentteaching;

FIG. 3 illustrates exemplary types of data sources;

FIG. 4( a) is a flowchart of an exemplary high level process in whichdynamic relations among different entities are discovered, according toan embodiment of the present teaching;

FIG. 4( b) illustrates a graph representation of a three-wayrelationship;

FIG. 4( c) shows a relationship between two entities that has multipleevents associating the entities;

FIG. 5( a) depicts an exemplary system diagram for a temporal peak baseddynamic relation candidate detector (TPDD), according to an embodimentof the present teaching;

FIG. 5( b) depicts an exemplary system diagram for a dynamic relationextractor (DRE), according to an embodiment of the present teaching;

FIG. 6 is a flow chart of a process, in which dynamic relations aredetected based on content from different data sources, according to anembodiment of the present teaching;

FIGS. 7( a) and 7(b) illustrate temporal profiles established based ondifferent entities and the co-peaks of the temporal profiles, accordingan embodiment of the present teaching;

FIG. 7( c) illustrates an exemplary representation of dynamic relationsdetected among different entities;

FIG. 8 depicts an exemplary system diagram of a dynamic event detector(DED) according to an embodiment of the present teaching;

FIG. 9 is a flowchart of an exemplary process in which the dynamic eventdetector identifies a dynamic event that connects different entities,according to an embodiment of the present teaching;

FIG. 10 is a flowchart of an exemplary process in which the dynamicevent detector performs event consolidation, according to an embodimentof the present teaching;

FIG. 11( a) shows a pairwise temporal graph representing detecteddynamic relations;

FIGS. 11( b)-(c) illustrate examples of consolidated events based onlocal temporal constraints, according to an embodiment of the presentteaching;

FIG. 12 illustrates exemplary types of event characterization; and

FIG. 13 depicts a general computer architecture on which the presentteaching can be implemented.

DETAILED DESCRIPTION

In the following detailed description, numerous specific details are setforth by way of examples in order to provide a thorough understanding ofthe relevant teachings. However, it should be apparent to those skilledin the art that the present teachings may be practiced without suchdetails. In other instances, well known methods, procedures, components,and/or circuitry have been described at a relatively high-level, withoutdetail, in order to avoid unnecessarily obscuring aspects of the presentteachings.

The present teaching relates to discovering dynamic relations amongdifferent entities, which can be any identifiable entities such asindividuals, organizations, or business units. Information from certaindata sources, e.g., unstructured or semi-structured data sources, isfirst analyzed to identify dynamically formed connections amongdifferent entities. Such connections may be detected, e.g., when suchentities are involved in the same event. FIG. 1 is an exemplarydepiction of how entities may be dynamically connected at differenttimes along a time line. In this depiction, 110 represents differentrows, each of which corresponds to a different entity, Ent. 1, Ent. 2, .. . , Ent. n+1. Columns 120 represent different time instances, each ofwhich can be an hour, a day, a week, etc. Each vertical line, e.g., line130, connects two entities at a particular time instant. For example,line 130 represents that at time instant T1, entity i and entity k+1 areconnected, e.g., both being mentioned in some accessible information.For instance, assume that O.J. Simpson corresponds to entity i, entity mcorresponds to his wife Nicole Brown Simpson, and entity k+1 correspondsto Ronald Goldman. If the news stories mentioned that the death ofNicole and Ronald were at the same time in the news reports linking O.J.Simpson to their deaths, there are two connections that can beidentified through such news reports. One is the connection between O.J.and Nicole (140) and the other between O.J. and Ronald Goldman (130) atthe same time T1. At a later time, say T2, if the news stories mentionedRonald Goldman's father, say entity n, another connection 150 wasdeveloped, linking Ronald Goldman to his father or entity n. Later attime T3, e.g., during O.J.'s trial, Ronald's father or entity n is alsoconnected (via line 160) to O.J. because both names were repeatedlyreported in the news about the trial. Because all these events occurredaround a continuous period of time, these entities (O.J., Nicole,Ronald, and Ronald's father) are all connected by the same underlyingset of events. By detecting such dynamically occurring connections andevents, dynamic relations among those entities can also be extracted.

As another example, at time Tj+1, the news report on Tiger Woods' (e.g.,entity 1) marriage to Erin Nordegren (entity 2) links Tiger Woods toErin Nordegren (170). Later in time at Tm, when the news story aboutTiger Woods' extramarital relationship with Rachel Uchitel (entity n+1)broke out, Tiger Woods and Rachel Uchitel are connected (180) and duringthe same time period (Tm+1), the repeated mentioning in the media aboutthe possible divorce between Tiger Woods and his wife Erin Nordegrenagain links (190) Tiger Woods and Erin Nordegren. Those events connectthree entities and by detecting such dynamically occurring connectionsand events from accessible information, a triangle relationship amongTiger Woods, Erin Nordegren, and Rachel Uchitel can be identified. Ascan be seen, such dynamic relations, although transient in nature, andthe underlying events represent meaningful and useful information.

First, various terms used in this disclosure are defined. A dynamicrelation is defined as follows. Given a set of data sources D, and twoentities, denoted by e1 and e2, e1 and e2 are dynamically related if thestrength of a connection s between e1 and e2 within a time window texceeds a certain threshold. Such a dynamic relation can be denoted as a4-tuple (e1, e2, t, s). The intuitive description of an event is thefollowing. Two entities are likely to be dynamically related if they arementioned more than the usual number of times around the same time.Depending on the data sources, the “more than the usual number of times”may be measured differently. For example, if the data source is querylog, it may be measured as bursting (appearing in more than usual numberof queried documents) around the same time. If the data source is anarchive, it may be measured as appearing together in a large number ofdocuments in a given period of time. Such defined relations are distinctfrom conventional static and pre-defined relations, which can beextracted from text without additional constraints.

A dynamic event is defined to be a 3-tuple, (E, R, t), where E is a setof entities, R is a set of relationships among the entities in E, and tis a continuous time window. Such an event involves multiple entitieswho are related by certain dynamic relationships and the event isconstrained by a set time window. An event may be the underlying basisfor a relationship. For example, the underlying event of the sex scandalis the basis of the dynamic relationship between Tiger Woods and RachelUchitel. On the other hand, a relation between different entities mayhave more than one underlying event. For instance, the relationshipbetween Tiger Woods and Erin Nordegren may be linked to two reportedevents, one is their marriage and the other is the sex scandal event.Each entity that is involved in an event may have a score indicating thelevel of involvement of the entity in the event.

FIG. 2 is a high level depiction of a system 200 for discovering dynamicrelations among entities, according to an embodiment of the presentteaching. Data from different sources 210 is input to a dynamic relationdetector (DRD) 220, which analyzes the data 220 and derives dynamicrelations as its output. To extract dynamic relations, the DRD 220comprises a temporal peak based dynamic relation candidate detector(TPDD) 230, a dynamic relation extractor (DRE) 240, a dynamic eventdetector (DED) 250, and a relationship description generator (RDG) 260.When information from different data sources is received, the TPDD 230analyzes the received information to identify candidate dynamicrelations based on co-occurrence of temporal peaks among differententities. Based on the detected dynamic relation candidates, the DRE 240extracts the discovered dynamic relations. Details relating to TPDD 230and DRE 240 will be provided with reference to FIGS. 5-7( c). Then theDED 250 detects the events that give rise to the detected dynamicrelations. Details relating to detecting events that relate entities areprovided with reference to FIGS. 8-11. Such identified underlying eventsprovide a context of the dynamic relations and can be used, by the RDG260, to generate descriptions of the dynamic relation among entities.

FIG. 3 illustrates exemplary types of data sources 300, which can be aquery log 310, a live feed 320, . . . , or a news archive 330. Eachspecific type of data sources may have further sub-sources. Forinstance, the live feed 320 can correspond to blogs 340, tweets 350, . .. or FaceBook 360. Information from different data sources may beaccessed or delivered to the DRD 220 (FIG. 2) via network connections(not shown). A network in such a context can be a single network or acombination of different networks. For example, a network can be a localarea network (LAN), a wide area network (WAN), a public network, aprivate network, a proprietary network, a Public Telephone SwitchedNetwork (PSTN), the Internet, a wireless network, a virtual network, orany combination thereof. A network may also include various networkaccess points, e.g., wired or wireless access points such as basestations or Internet exchange points, through which a data source mayconnect to the network in order to transmit information via the network.

FIG. 4( a) is a flowchart of an exemplary high level process in whichdynamic relations among different entities are discovered, according toan embodiment of the present teaching. Information from differentsources is first obtained at 410. Based on the received information,temporal profiles of entities are computed at 420. In some embodiments,a temporal profile for a particular entity is the number of occurrencesof the entity's name within each time unit found in the information fromdifferent data sources during a time period. The time unit may be anhour, a day, or a week, which may be dynamically adjusted based onapplication need. FIGS. 7( a) and 7(b) show two exemplary temporalprofiles, 710 and 720, corresponding to entities Tiger Woods and ErinNordegren, respectively. In these examples, the x-axis is time and they-axis represents the frequency or number of occurrences within a timeunit. It can be seen that a temporal profile of a particular individualwith respect to a particular time period indicates how intensely thisindividual is being reported in the media.

Based on the temporal profiles of different entities, the TPDD 230detects, at 430, dynamic relation candidates by, e.g., identifyingentities that co-peak in the same time period. For example, in FIGS. 7(a) and 7(b), both temporal profiles of Tiger Woods 710 and ErinNordegren 720 peak during the same time unit 700. The fact that themedia mentions both during the same time period may be an indicationthat these two people are related during that period by some underlyingevent(s). For instance, the peaks during time period 700 may correspondto the event, e.g., of their marriage. At time unit 705, there isanother peak in the temporal profile 710 for Tiger Woods but there is nocorresponding counterpart peak in the temporal profile 720 for ErinNordegren. For instance, at time unit 705, Tiger Woods may be mentionedby the media for his winning a golf tournament, which is why it is notrelated to Erin Nordegren. In this case, the co-occurrence of peaks intemporal profiles 710 and 720 may lead to a detection of a candidatedynamic relation between Tiger Woods and Erin Nordegren. The selectionof the time unit may be used to constrain the temporal nature of dynamicrelations to be detected. For instance, the time unit may be set to be acertain time window so that the relation detected may be directed toones that are driven by some emerging underlying events. It isunderstood that identifying dynamic relationship candidates via theco-peaking technique is for illustration only. Any other approaches thatare designed to identify two entities likely being involved in the sameunderlying event during a time window may be adopted to detect candidatedynamic relations.

It is not always the case that peaking at the same time means that theco-peaking entities are dynamically related. At 440 of the flow, thedynamic relationship candidates, detected at 430, are further filteredbased on corroboration, as discussed herein. If a temporal profile isconstructed using bursting measures computed from a query log andcandidate dynamic relationships are estimated by detecting theco-peaking entity pairs, it is possible that two co-peaking entities,while both peaked very high on the same day, are actually not related byany event. For example, on the same day, there may be many documents inquery logs related to Tiger Woods and President Obama, respectively, dueto, e.g., the fact that Tiger Woods' sex scandal was just being exposedand President Obama just gave a speech that stirred up much criticism.These two entities, Tiger Woods and President Obama, are not relateddespite the fact that they co-peaked in the temporal profile constructedbased on the query log. To reliably detect dynamic relations, in someembodiments, information from different sources, e.g., a news archive,may be used as part of dynamic relationship detection to see whether theco-peaking observed from one data source (e.g., query log) can becorroborated in another independent data set. For instance, informationfrom a news archive may be used to see whether in the news, these twoentities are actually mentioned in the same documents. Intuitively, ifthey are also mentioned in the same documents, likely they are involvedin the same underlying event. Otherwise, the co-peaking phenomenon maybe simply coincidental. For instance, although both Tiger Woods andPresident Obama co-peaked in the query log, it is very unlikely thattheir names appear in the same documents from a news archive. In thisway, any incidental co-peaking entities may be filtered out from dynamicrelationship candidates. On the other hand, if the co-peakingobservation based on one data set (e.g., query log) is corroborated inanother data set based on co-appearance in the same document, it can beconfirmed that the originally detected candidate dynamic relation islikely an actual dynamic relationship.

Based on such detected dynamic relations, events that give rise to thedynamic relationships are detected at 450. For example, if both thedynamic relationship between Tiger Woods and Rachel Uchitel and thatbetween Tiger Woods and Erin Nordegren are detected, the underlyingevent, the Tiger Woods' sex scandal, that gives rise to both dynamicrelationships can be detected. Based on this underlying event, the twooriginally detected dynamic relationships (between Tiger Woods andRachel Uchitel and between Tiger Woods and Erin Nordegren) are nowmerged into one 3-way relationship among Tiger Woods, Rachel Uchitel,and Erin Nordegren. This is illustrated in FIG. 4( b). Based on thedetected event, information surrounding the event or entitiesparticipating or involved in the event (e.g., from news articles oronline documents describing the event or any other information about thedynamically related entities involved in the event) may be used togenerate, at 460, a characterization of the event.

Such a description may include a set of attributes, some of which may bea textual characterization of the event(s) (e.g., a summary) or anyentity involved in the event, some of which may correspond to a measure,either qualitative or quantitative. For instance, a measure may beincluded to indicate, e.g., the confidence in the detected event, whichmay be computed as, e.g., the strength of the dynamic relationshipsexisting among the entities involved in the same event. As anotherexample, it can be a measure of the likelihood of the set of allparticipating entities being dynamically connected during a particulartime interval. In addition, a description may also include other usefullinks that may be used to access other relevant information. In someembodiments, the description may also include a list of additionalstatic relationships that exist among different entities who areinvolved in the current detected dynamic relationship. For example, inthe triangle relationship among Tiger Woods, Rachel Uchitel, and ErinNordegren, there may be another already existing static relationshipsuch as the marital relationship between Tiger Woods and Erin Nordegren.In this case, Tiger Woods and Erin Nordegren are related by not only thesex scandal event but also by the marriage event, as shown in FIG. 4(c). Such information may be utilized to enrich the descriptive power ofthe currently detected event.

FIG. 5( a) depicts an exemplary system diagram for the temporal peakbased dynamic relation candidate detector (TPDD) 230, according to anembodiment of the present teaching. Information from a first data source505 is first received by a data analyzer 515. Such information isanalyzed by the data analyzer 515 to, e.g., extract entities based onany existing technologies. For instance, by employing some of theexisting technologies to extract entities, language models 520 may beutilized. The extracted entities may be stored in an entity database525. In some embodiments, the entities may be extracted by a third partyprovider. In this case, the data analyzer 515 may directly proceed toother processing.

Based on the extracted entities and the information from the first datasource, the data analyzer 515 may process the content from the firstdata source in which different entities appear. For example, the dataanalyzer 515 may compute the frequency of the occurrences of everyentity with respect to the content from the first data source 505. Suchfrequency may be computed based on a certain unit of time, e.g., eachday or each week. The frequency information may be forwarded to atemporal profile generator 530, which may then construct, for eachentity, a temporal profile with respect to time based on the frequenciesof occurrences of the entity in content from the first data source 505.

An example temporal profile produced by the temporal profile generator530 is illustrated in FIG. 7( a), which is an exemplary temporal profilefor Tiger Woods within a certain period of time. As can be seen in FIG.7( a), the frequency of occurrences of Tiger Woods in different mediacontent fluctuates over time. That is, in some time periods, his namemay appear much more than usual, e.g., when his sex scandal was reportedin the media. FIG. 7( b) shows another example temporal profile for,e.g., Tiger Woods' wife Erin Nordegren. As can be seen, although thereare fluctuations, the amplitude of the fluctuation for Erin Nordegren islower than that of Tiger Woods. In general, a peak in a temporal profilefor an entity represents that the entity is likely widely mentioned inthe media and it may serve as an indication that there is someunderlying event occurred involving the entity.

In most situations, when two entities are related by an underlyingevent, when such event is reported in the media, names of both entitiesusually co-occur in a single document. This observation also indicatesthat the temporal profiles for two entities who are related by the sameunderlying event usually have peaks in their temporal profiles duringthe same time period. Based on such observations, in order to detectdynamic relations among different entities, peaks of temporal profilesand co-peaks between different temporal profiles may be identified.However, it is not true that when two entities have temporal profilepeaks during the same time period they are necessarily related. Forinstance, during the time period that Tiger Woods' sex scandal broke tothe media, President Obama may be widely reported on his effort to passthe health care bill in the House. Although their temporal profiles mayhave peaks during the same period, Tiger Woods and President Obama arenot related by the same underlying event and therefore, are notdynamically related.

The temporal profile generator 530 generates temporal profiles for allentities being analyzed. Such temporal profiles are sent to a temporalpeak identifier 535, where peak locations in time in each temporalprofile can be identified. For instance, in FIG. 7( a), peaks 700 and705 in two different time periods in Tiger Woods' temporal profile areidentified. To detect peaks in temporal profiles, different techniquesmay be employed. In some embodiments of the present teaching, a rapidrising approach may be used to detect peaks. The former detects a peakby relying on a rapidly rising edge and the latter detects a peak byrelying on both a rapidly rising edge and a rapidly falling edge in atemporal profile. For instance, let's assume that a temporal profile isTe, t is a time window with a certain duration, e.g., a day, and Ct is acount which is the number of occurrences within time window t. To detecta peak using the rapid rising approach, time window t corresponds to arising edge of a peak if Ct is more than 1 standard deviations away fromthe mean count of k leading time windows. That is, there is a sharp risein the temporal profile. Alternatively, to detect a peak using rapidrise and fall approach, each Ct is compared with the mean count of kleading windows and the mean count of k tailing windows. If Ct is over 1standard deviations away from the mean count of the k leading windows, arising edge is detected at window t. If Ct is over 1 standard deviationsaway from the mean count of the 1 tailing windows, a falling edge isdetected at window t. Such peaks usually can capture most of the dynamicevents that exhibit short-spiking behavior in terms of duration.

If no peak is detected from a temporal profile, the entity correspondingto the temporal profile may be removed from further processing. Anyremaining temporal profiles for which peaks have been identified maythen be sent to a temporal profile (TP) co-peaking detector 565, whereany two entities that have peaks in their temporal profiles during thesame time unit may be identified. Such pairs of entities may then bestored in a dynamic relation candidate (DRC) database 545 for furtherverification and processing.

FIG. 5( b) depicts an exemplary system diagram for the dynamic relationextractor (DRE) 240, according to an embodiment of the present teaching.The DRE 240 takes the dynamic relation candidates stored in the DRCdatabase 545 as input and identifies dynamic relations by confirming orverifying whether any two entities in a DRC candidate is related withsome level of certainty. In some embodiments, to verify a detecteddynamic relation candidate, the DRE 240 analyzes information from otherdata sources that are disjoint from the first data source to ascertainwhether the two entities involved in a dynamic relation candidate alsohave co-peaks in their temporal profiles constructed based on the otherdata sources. For instance, if Tiger Woods and President Obama co-peakedin the content from the first data source 505, which is, e.g., a querylog, the DRE 240 may analyze content from other sources, e.g., contentfrom the Internet or specific web sites, to see whether these twoentities also co-peak in content from independent sources.

In some embodiments, the DRE 240 obtains content from a second datasource 510 and identifies entities. In some situations, it may identifyonly the entities involved in the dynamic relation candidates stored. Insome embodiments, the DRE 240 may rely on the entities stored in theentity database 525 as the basis for identifying the occurrences ofthose entities involved in the dynamic relation candidates in the DRCdatabase 545 (not shown) [QIAN, 545 IS SHOWN]. The frequencies ofoccurrences of entities in content from the second data source 510 maythen be sent to the temporal profile generator 530 so that temporalprofiles for entities that occurred in content from the second datasource 510 may be constructed. The constructed temporal profiles arethen sent to the temporal peak detector 535 so that various peaks in thetemporal profiles obtained based on content from the second data source510 may be detected by the temporal peak detector 535. Similar to themanner in which the content from the first data source 505 is furtherprocessed, the TP co-peaking detector 565 then identifies all entitiesfrom the second data source 510 that have co-peaks in their respectivetemporal profiles during the same time period.

Entity pairs that have co-peaks detected from temporal profiles derivedbased on content from the first data source 505, determined based on thedynamic relation candidates (stored in DRC database 545) may then bechecked against the co-peaking entities identified based on the contentfrom the second data source 510. This is done by a co-occurrencecorroboration mechanism 550, which takes the co-peaking pairs from boththe first data source and the second data source and determines whethercorroboration can be found. If two entities are co-peaked in contentfrom both data sources, there may be a higher degree of certainty thatthe two entities are indeed dynamically related. In this case, the twoentities may be treated as parties related by a dynamic relation and maythen be stored in a dynamic relation (DR) database 555. If corroborationof co-peaking between two entities identified based on content from thefirst data source 505 can not be found in the temporal profiles obtainedbased on content from the second data source 510, the initiallyidentified dynamic relation candidate then is not selected as a detecteddynamic relation.

Once all the dynamic relations are identified (e.g., stored in the DRdatabase 555), a dynamic relation (DR) representation generator 560 maythen produce a representation for each such identified dynamic relation.For instance, a representation of a dynamic relation may correspond to agraph, in which nodes of the graph represent entities involved in adynamic relation and a link between two entities may represent a dynamicrelationship between the two. Such generated representation may then bestored in the DR database 555. An example of a representation of adynamic relation is shown in FIG. 7( c). In this example, there are fourentities and different pairs of two entities are linked by some dynamicrelationship detected. For instance, node 1 740 is linked to node 2 750,node 750 is also linked to node 3 760 and node 4 770, and node 3 760 isalso linked to node 4 770. In this graph representation, even thoughthere are links connecting to a pair of entities, it may not benecessary that each dynamic relation involves only a pair of twoentities. For example, three entities may be involved in a trianglerelationship such as Tiger Woods, Eric Nordegren, and Rachel Uchitel.

To provide adequate information in a representation of a detecteddynamic relation, various attributes associated with either an entity orthe nature of the relationship may be identified and used to generate arepresentation of the dynamic relation. For instance, for each node,different attributes describing the entity (e.g., name, sex, age,profession, or past media reported events involving the same entity) maybe associated with each node. For each link connecting two entities,attributes may also be used to describe the properties of the link,e.g., the time frame during which co-peaking leads to the connection ora summary of the media report, e.g., in the form of keywords, that mayprovide information as to the nature of the relationship. In addition,each edge in the graph may be weighted by a measure that may indicatethe strength of the connection between the two entities. For example,this measure may be computed based on the amplitude of the peaks thatoccurred during the same time period. In this manner, the representationof the detected dynamic relation not only reflects how the entities areconnected but also some details about different aspects of the dynamicrelation. In some embodiments, the DR representation generator 560 maygenerate some description of the dynamic relation such as informationrelated to the entities involved in the relationship and some snapshotof what is being reported about the relationship between the entities.Such information may be further utilized in subsequent processing steps,e.g., after the event that gives rise to the dynamic relationship isidentified, to provide a more detailed and precise description of thedynamic relationships. Detailed discussion related to detecting suchevents is provided with reference to FIGS. 8-12.

In the exemplary embodiment of the DRE 240, as shown in FIG. 5( b), itmay invoke the system components that are shared with the TPDD 230 (seeFIG. 5( a)). For example, the data analyzer 515, the temporal profilegenerator 530, the temporal peak detector 535, and the TP co-peakingdetector 565 may be shared by both the TPDD 230 and DRE 240. It isunderstood that the presented implementation is merely for illustrationrather than for limitation. Any implementation that may be adopted toidentify dynamic relation candidates via temporal profile co-peaking andco-corroboration are within the spirit of the teaching discussed herein.

FIG. 6 is a flow chart of a process, in which dynamic relations aredetected based on content from different data sources, according to anembodiment of the present teaching. Information obtained from a firstdata source is analyzed at 610. Temporal profiles with respect todifferent entities are then constructed at 620. Based on the temporalprofiles, co-peaking entities are identified, at 630, and suchco-peaking entities are stored as dynamic relation candidates. To verifywhether co-peaked entities are linked by a dynamic relation with somecertainty, content from a second independent data source is obtained andanalyzed at 640. Temporal profiles are derived based on the content fromthe second independent data source and peaks in such temporal profilesare also identified at 650. Co-peaks from temporal profiles obtainedfrom both the first data source and the independent second data sourceare checked, at 660, to see whether each co-peak from the first datasource is corroborated by a co-peak identified from the secondindependent data source. If it is corroborated, the correspondingdynamic relation candidate determined based on the first data source isidentified as a detected dynamic relation. A representation for thedetected dynamic relations is then generated at 670.

As discussed herein, each detected dynamic relation, which may involvemore than two entities, is usually given rise by some underlying eventthat occurred. For example, the dynamic relation among Tiger Woods, ErinNordegren, and Rachel Uchitel is dominated by Tiger Woods' sex scandal.Although the representation obtained so far for the detected dynamicrelations provides information about who is linked to whom, it does notindicate how the entities in the representation are to be divided inaccordance with the underlying events that gave rise to the differentdynamic relations. As one example, the graph representation as shown inFIG. 7( c) may include more than one dynamic relation. For instance,nodes 2, 3, and 4 (750, 760, and 770, respectively) may correspond toTiger Woods, Erin Nordegren, and Rachel Uchitel, respectively. Thetriangle among these three may correspond to the underlying event of thesex scandal. In this example, although node 1 740 (e.g., correspondingto a Tiger Woods' competitor, to whom Tiger Woods just lost a game onthe golf course) is linked to node 2 750 (e.g., Tiger Woods), theirrelationship has nothing to do with the sex scandal. That is, in thisrepresentation, although all entities are linked together, there aremultiple underlying events that give rise to different dynamicrelations. Therefore, to precisely detect each dynamic relation, theunderlying event that gave rise to each dynamic relation also needs tobe accurately detected.

FIG. 8 depicts an exemplary system diagram of the dynamic event detector(DED) 250 according to an embodiment of the present teaching. In thisexemplary embodiment, dynamic events are detected as holistic dynamicevents based on the dynamic relationships that have so far beenidentified by combining multiple binary relationships and the entitiesinvolved in those relationships, so long as they are temporallyconsistent, into a single n-way event that represents a real worldevent. In some embodiments, detection of such holistic real world eventscan be achieved in three stages. The first stage is to detect dynamicevent candidates, the second stage is to consolidate the dynamic eventsbased on some criteria that enforce temporal consistency, and the thirdstage is to estimate the likelihood as to how likely the consolidatedevent is a true real world event.

In the exemplary system diagram of the DED 250, an event candidatedetector 810 is designed to achieve the first stage of processing todetect pairwise dynamic relationships. The event candidate detector 810takes the dynamic relationship (DR) representation from the DR database555 as input. As discussed herein, in some embodiments, the DRrepresentation corresponds to graphs, in which nodes represent entitiesand an edge represents a detected dynamic relation linking two entitiesinvolved in the dynamic relationship. From such a DR representation, theevent candidate detector 810 identifies pairwise temporal graphs, eachof which may have multiple nodes and multiple edges. FIG. 7( c)illustrates one example of a pairwise temporal graph, in which there aremultiple nodes, representing multiple entities, and multiple dynamicrelationships, each of which is represented by an edge in the graph.However, from this example, it is not clear yet as to whether all theentities and dynamic relationships represented in the graph are actuallyall linked by the same real world event.

An actual dynamic relationship among different entities has the sameunderlying event so that it is necessary to detect the underlying eventthat gives rise to a meaningful dynamic relationship. To do so, in thesecond stage, a pairwise temporal graph, identified by the eventcandidate detector 810, is further processed by an event consolidator820 to identify the nodes and edges in each pairwise temporal graph thatcorrespond to the same real world event. To achieve that, the eventconsolidator 820 applies one or more temporal constraints, which can bedynamically configured by a consolidation parameter configuration unit855, to the pairwise temporal graph being processed to estimate whichnodes and edge(s) therein should be merged or consolidated into onesingle event. In some embodiments, the event consolidator 820 mayinclude one or more event consolidation units such as eventconsolidation unit 1 825, event consolidation unit 2 830, . . . , eventconsolidation unit K 835, each of which may be responsible for enforcingone or a sub-set of temporal constraints, e.g., a first temporalconstraint 840 may be used by event consolidation unit 1 825 toconsolidate pairwise relationships, a second temporal constraint 845 maybe used by event consolidation unit 2 830 to consolidate pairwiserelationships, . . . and a Kth temporal constraint 845 may be used byevent consolidation unit K 835 to consolidate pairwise relationships. Inprocessing, an event identification controller 815 may control whattemporal constraint is to be used in consolidating the pairwise temporalgraphs by selectively invoking appropriate event consolidation units.

Each event consolidation unit may be configured to apply certaintemporal constraint(s) to a given pairwise temporal graph. Applicationof each temporal constraint may yield a different result, i.e., adifferent sub-graph or a clique of the pairwise temporal graph. In someembodiments, operations of different event consolidation units may beperformed sequentially. A result from an event consolidation unit,together with, e.g., the original pairwise temporal graph, may be passedto a next event consolidation unit and the last event consolidation unitK may produce the ultimate result. In some embodiments, results fromdifferent event consolidation units may all be passed to the eventidentification controller 815 so that they can be merged to produce afinal result of a consolidated event that link different entities andthe dynamic relationships among the linked entities are all related to asingle real world event.

Different temporal constraints may be configured and used inconsolidating events. Exemplary temporal constraints include a globaltemporal constraint and local temporal constraint. Based on theobservation that any real world event may be reported over a certainlength of time, e.g., a few weeks, a global temporal constraint aims atlimiting the time span associated with edges of a pairwise temporalgraph within that certain length of time. For instance, a specificglobal temporal constraint may be that all the nodes and edges in agraph cliqued from the pairwise temporal graph are not separated by morethan K weeks. For the special case where K is zero, every edge in apairwise temporal graph has a time frame attribute within the same weekso that events found in this fashion are on a week-by-week basis.

Such a global temporal constraint caps the maximal span of the event andsometimes may not be adequate to identify reliably a coherent real worldevent. For instance, if there are two events that occurred back to backwithin K weeks, even though the pairwise temporal graph may meet theglobal temporal constraints, there are two underlying events beingconsolidated into one event. To improve the performance of eventconsolidation, other temporal constraints may also be used. A localtemporal constraint focuses more on the temporal continuity amongdynamic relationships. Given an event, if there is an entity thatconnects two different entities during two close time periods, then thethree entities are more likely to be actually related as a result of theevent if the two time periods overlap. Another observation is that anevent spanning a period may be more likely to be an actual event if eachof the consecutive weeks in the period is supported by some dynamicrelationships. To reflect such observations in consolidating an event, alocal temporal constraint may be designed to require that any twodynamic relationships involving the same entity should share a commontime period, such as one week, and those dynamic relationships shouldalso together form a continuous time period and each dynamicrelationship should also be covered by this overall time period.

FIGS. 11( b)-(c) illustrate examples of consolidated events based onlocal temporal constraints as discussed herein based on a pairwisetemporal graph as shown in FIG. 11( a). As can be seen in FIG. 11( a),there are four nodes 1110, 1120, 1130, and 1140 and four edges marked bytime periods {t1,t2}, {t2,t4}, {t4,t5}, and {t5,t6}. That is, entities1110 and 1120 are linked by a relationship that occurred during timeperiod {t1, t2}, entities 1120 and 1130 are linked by a relationshipthat occurred during time period {t2, t4}, entities 1130 and 1140 arelinked by a relationship that occurred during time period {t4, t5}, andentities 1120 and 1140 are linked by a relationship that occurred duringtime period {t5, t6}. By enforcing the local temporal constraint asdescribed above, the pairwise temporal graph shown in FIG. 11( a) isdivided into two cliques or sub-graphs, as shown in FIGS. 11( b) and11(c), both of which have entities that link to other entities and sharea common time period. For instance, in the first sub-graph in FIG. 11(b), node 1130 links to two nodes 1120 and 1140 and on these two links,the shared time is t4. Similarly, in FIG. 11( c), node 1120 links to twoother nodes 1110, and 1130 and the shared time is t2.

Such consolidated events, each of which is represented by a clique or asub-graph, may then be stored in an event database 865. Eachconsolidated event and information associated therewith may also be sentto an event characterization generator 860 to compute descriptions,estimates, or measurements related to the entities and the event thatgave rise to the dynamic relations among those entities. FIG. 12 showsexemplary types of information that can be obtained based on theidentified event and related entities to enrich the detected event. Anevent can be described by event characterization 1210. Suchcharacterization may include entity related characterization 1220 andevent related characterization 1230. In some embodiments, entity relatedcharacterization may include a general profile of the entity 1240 (e.g.,a general profile of Tiger Woods as a star in golf), event specificentity profile 1250 (e.g., summary of specific role of Tiger Woods inthe sex scandal event), . . . , or entity related measures 1260 (e.g., aqualitative or quantitative measure indicating the level ofparticipation of the entity in the detected underlying event (e.g., thedegrees of involvement for Rachel Uchitel and Erin Nordegren in TigerWoods' sex scandal event are different). Such measure may be estimatedbased on the number and strength of pairwise relationships within theevent cluster or the clique representing the event. For instance, anattribute associated with each edge in the cluster indicating thestrength of a connection between two entities (e.g., computed based onthe amplitude of the co-peaks during the same period) may be used tocompute the degree of involvement of each entity in the underlyingevent. In the Tiger Woods sex scandal example, it is conceivable thatRachel Uchitel's name was mentioned much more often than ErinNordegren's so that the co-peak strength between Tiger Woods and RachelUchitel is likely much stronger than that between Tiger Woods and hiswife Erin Nordegren. In this case, the involvement scores for both TigerWoods and Rachel Uchitel are higher than that of Erin Nordegren. Oneexample computation for an involvement score is formulated as follows:

I(e,v)=(Σ_(e is not e′) s(e, e′))/N

where e and e′ represent different nodes (or entities), s(e,e′)represents a score indicating the strength of an edge linking node e ande′, and N is a normalization factor which may be set to be the totalstrength of all edges linking to node e.

In some embodiments, event related characterization may include adescription of the detected underlying event 1280. In some embodiments,such a description may be obtained based a set of keywords extractedfrom content from which dynamic relationships corresponding to the sameevent are identified. In some embodiments, instead of keywords, a briefsummary may be obtained based on the same content. Any knowntechnologies, existing or developed, for generating a description of anevent may be utilized. In addition, as shown in FIG. 12, event relatedcharacterization may also include some information reflecting thepopularity or impact of the underlying event 1290. Event popularity mayrefer to the ranking of detected events based on the importance of theevent when the event is correctly identified. For example, Tiger Woods'sex scandal may be wide spread within the U.S. but may not have the samelevel of importance internationally. But the election result in theUnited States for president may be much more popular or have a biggerimpact internationally.

In some embodiments, to estimate the popularity of an event, query logsvolume generated by a specific event may be used as a feature inestimating the popularity. Specifically, different measurements may becomputed based on query log. For example, the number of times keywordsin an event description or number of queries for each entityparticipating in an event occurred within the same time period as thedetected event can be calculated based on a query log. Such computedmeasures may then be aggregated and weighted by the relevance of eachkeyword and involvement scores of each entity to determine the totalevent popularity.

Another example of event related characterization may include somemetric indicating the confidence in the detection of the underlyingevent 1270. An event confidence score reflects the level of belief thatthe event is correctly identified. To obtain such a measure, it may berelevant to determine whether the entities identified to be connected bydynamic relations likely should be connected. Such a measure may bederived based on a probability of connectedness on each edge. Forexample, if each edge in a clique or sub-graph (representing an eventand the participating entities) has an attribute representing theprobability that the two entities in the real world are actuallyrelated, the confidence for the underlying event may be computed basedon the following formula:

C(v)=Σ_(sεΦ)(Ind(v/S)×π_(rεΦ) s(r)×π_(r not εΦ)(1−s(r)))

where Φ=2^(R), r is an edge in the clique, s(r) is the weight of theedge, and Ind (v/S) is an indicator variable that is equal to one if therestriction v/s to the edges in S is connected, and zero otherwise.According to this formula, it adds the probability of every combinationof inclusion/omission of edges that result in a collection of all nodesin the clique being connected. Although in the illustrated formula, allpossible subsets are enumerated to compute the confidence score C(v) forthe event, it is understood that enumeration is not required. Inaddition, other techniques may also be employed to implement thecomputation of the confidence score for the detected event and all suchimplementations are within the scope of the present teaching.

FIG. 9 is a flowchart of an exemplary process in which the dynamic eventdetector 250 identifies a dynamic event that connects differententities, according to an embodiment of the present teaching. A dynamicrelation representation is first received and analyzed at 910. One ormore event candidates are then identified at 920. It is then determined,at 930, whether any event consolidation is to be performed. If eventconsolidation is to be performed, the detected event candidate isforwarded so that event consolidation can be performed at 940. Once anevent is detected, either with or without event consolidation, an eventcharacterization is generated at 950.

FIG. 10 is a flowchart of an exemplary process in which the dynamicevent detector 250 performs event consolidation, according to anembodiment of the present teaching. A pairwise temporal graph to beconsolidated is first obtained at 1010. It is determined, at 1020,whether the event consolidation is to be performed based on a single ormultiple temporal constraints. If there is a single temporal constraintemployed for event consolidation, the dynamic event detector 250performs, at 1030, event consolidation based on the single temporalconstraint. For example, such a single temporal constraint can be aglobal temporal constraint or a local temporal constraint. If the eventconsolidation is to be performed with respect to more than one temporalconstraint, the dynamic event detector 250 performs, at 1040, eventconsolidation with respect to a next temporal constraint. Whenever thereare more temporal constraints remaining to be considered for eventconsolidation, determined at 1050, the processing returns to 1040 forevent consolidation based on the next temporal constraint. When all thetemporal constraints are considered and used to yield results for eventconsolidation, such results may then be merged or integrated at 1060.Based on the integrated result, a consolidated event taking into accounttemporal constraints is generated at 1070. As discussed above, FIGS. 11(b) and (c) illustrate consolidated events identified based on apairwise temporal graph shown in FIG. 11( a).

To implement the present teaching, computer hardware platforms may beused as the hardware platform(s) for one or more of the elementsdescribed herein (e.g., the temporal peak based DRC detector (TPDD) 230,the dynamic relation extractor (DRE) 240, the dynamic event detector(DED) 250, and relationship description generator (RDG) 260). Thehardware elements, operating systems and programming languages of suchcomputers are conventional in nature, and it is presumed that thoseskilled in the art are adequately familiar therewith to adapt thosetechnologies to implement the DCP processing essentially as describedherein. A computer with user interface elements may be used to implementa personal computer (PC) or other type of work station or terminaldevice, although a computer may also act as a server if appropriatelyprogrammed. It is believed that those skilled in the art are familiarwith the structure, programming and general operation of such computerequipment and as a result the drawings should be self-explanatory.

FIG. 13 depicts a general computer architecture on which the presentteaching can be implemented and has a functional block diagramillustration of a computer hardware platform which includes userinterface elements. The computer may be a general purpose computer or aspecial purpose computer. This computer 1300 can be used to implementany components of the dynamic web page generation architecture asdescribed herein. For example, the temporal peak based DRC detector(TPDD) 230 that identifies dynamic relation candidates based on contentfrom a first data source, the dynamic relation extractor (DRE) 240 thatdetect dynamic relations among entities based on corroboration acrossdifferent independent data sources, the dynamic event detector (DED) 250that detect events that gave rise to dynamic relationships amongentities, and the relationship description generator (RDG) 260 thatgenerates characterizations of events and entities participating in theevents based on accessible information, can all be implemented on acomputer such as computer 1300, via its hardware, software program,firmware, or a combination thereof. Although only one such computer isshown, for convenience, the computer functions relating to dynamicrelation and event detection may be implemented in a distributed fashionon a number of similar platforms, to distribute the processing load.

The computer 1300, for example, includes COM ports 1350 connected to andfrom a network connected thereto to facilitate data communications. Thecomputer 1300 also includes a central processing unit (CPU) 1320, in theform of one or more processors, for executing program instructions. Theexemplary computer platform includes an internal communication bus 1310,program storage and data storage of different forms, e.g., disk 1370,read only memory (ROM) 1330, or random access memory (RAM) 1340, forvarious data files to be processed and/or communicated by the computer,as well as possibly program instructions to be executed by the CPU. Thecomputer 1300 also includes an I/O component 1360, supportinginput/output flows between the computer and other components thereinsuch as user interface elements 1380. The computer 1300 may also receiveprogramming and data via network communications.

Hence, aspects of the methods of receiving user queries and returning aresponse, e.g., a URL associated with dynamically generated web pages orthe content contained in the dynamically generated web pages, asoutlined above, may be embodied in programming. Program aspects of thetechnology may be thought of as “products” or “articles of manufacture”typically in the form of executable code and/or associated data that iscarried on or embodied in a type of machine readable medium. Tangiblenon-transitory “storage” type media include any or all of the memory orother storage for the computers, processors or the like, or associatedmodules thereof, such as various semiconductor memories, tape drives,disk drives and the like, which may provide storage at any time for thesoftware programming.

All or portions of the software may at times be communicated through anetwork such as the Internet or various other telecommunicationnetworks. Such communications, for example, may enable loading of thesoftware from one computer or processor into another, for example, froma management server or host computer of the search engine operator orother DCP service provider into the hardware platform(s) of a computingenvironment or other system implementing a computing environment orsimilar functionalities in connection with generating the dynamic webpages based on user queries. Thus, another type of media that may bearthe software elements includes optical, electrical and electromagneticwaves, such as used across physical interfaces between local devices,through wired and optical landline networks and over various air-links.The physical elements that carry such waves, such as wired or wirelesslinks, optical links or the like, also may be considered as mediabearing the software. As used herein, unless restricted to tangible“storage” media, terms such as computer or machine “readable medium”refer to any medium that participates in providing instructions to aprocessor for execution.

Hence, a machine readable medium may take many forms, including but notlimited to, a tangible storage medium, a curie' wave medium or physicaltransmission medium. Non-volatile storage media include, for example,optical or magnetic disks, such as any of the storage devices in anycomputer(s) or the like, which may be used to implement the system orany of its components as shown in the drawings. Volatile storage mediainclude dynamic memory, such as a main memory of such a computerplatform. Tangible transmission media include coaxial cables; copperwire and fiber optics, including the wires that form a bus within acomputer system. Carrier-wave transmission media can take the form ofelectric or electromagnetic signals, or acoustic or light waves such asthose generated during radio frequency (RF) and infrared (IR) datacommunications. Common forms of computer-readable media thereforeinclude for example: a floppy disk, a flexible disk, hard disk, magnetictape, any other magnetic medium, a CD-ROM, DVD or DVD-ROM, any otheroptical medium, punch cards paper tape, any other physical storagemedium with patterns of holes, a RAM, a PROM and EPROM, a FLASH-EPROM,any other memory chip or cartridge, a carrier wave transporting data orinstructions, cables or links transporting such a carrier wave, or anyother medium from which a computer can read programming code and/ordata. Many of these forms of computer readable media may be involved incarrying one or more sequences of one or more instructions to aprocessor for execution.

Those skilled in the art will recognize that the present teachings areamenable to a variety of modifications and/or enhancements. For example,although the implementation of various components described above may beembodied in a hardware device, it can also be implemented as a softwareonly solution—e.g., an installation on an existing server. In addition,the dynamic relation/event detector and its components as disclosedherein can be implemented as a firmware, firmware/software combination,firmware/hardware combination, or a hardware/firmware/softwarecombination.

While the foregoing has described what are considered to be the bestmode and/or other examples, it is understood that various modificationsmay be made therein and that the subject matter disclosed herein may beimplemented in various forms and examples, and that the teachings may beapplied in numerous applications, only some of which have been describedherein. It is intended by the following claims to claim any and allapplications, modifications and variations that fall within the truescope of the present teachings.

1. A method, implemented on a machine having at least one processor,storage, and a communication platform connected to a network fordetecting a dynamic relationship and discovering a dynamic event,comprising the steps of: receiving, via the communication platform, datafrom a first data source; identifying, by a dynamic relation candidatedetector, at least one dynamic relation candidate, each of whichinvolves a plurality of entities, based on temporal properties withrespect to the one or more entities exhibited in the data from the firstdata source; extracting, by a dynamic relation extractor, dynamicrelations by corroborating the temporal properties of the entitiesinvolved in the at least one dynamic relation candidate with that of thesame entities exhibited in data from a second data source; detecting, bya dynamic event detector, a dynamic event that gives rise to the dynamicrelations among different entities.
 2. The method of claim 1, whereinthe first and second data sources are independent of each other.
 3. Themethod of claim 1, wherein the step of identifying comprises the stepsof: constructing a first temporal profile for each of the entitiesidentified in the data from the first source based on frequencies ofoccurrences of the entity in time in the data from the first datasource; identifying one or more peaks in a first temporal profile foreach entity; and extracting co-peaking entities, whose first temporalprofiles exhibit peaks during a same time period with each other, asentities involved in a dynamic relation candidate.
 4. The method ofclaim 1, wherein the step of extracting comprises the steps of:constructing, for each entity involved in a dynamic relation candidate,a second temporal profile based on data from the second source based onfrequencies of occurrences of the entity in time in the data from thesecond data source; identifying one or more peaks in the second temporalprofile for each entity; identifying co-peaking entities, whose secondtemporal profiles exhibit peaks during a same time period; confirming adynamic relation candidate as a dynamic relation when co-occurrence ofco-peaking temporal property is detected across data from both the firstand the second data sources; and generating a representation for eachsuch confirmed dynamic relation.
 5. The method of claim 1, wherein thestep of detecting comprises: obtaining a representation of a dynamicrelation involving a plurality of entities and one or more connections,each of which linking two entities; accessing one or more temporalconstraints; and identifying an event that gives rise to the dynamicrelation based on the one or more temporal constraints and applicationthereof to the representation, wherein the event involves a set ofentities and a set of connections linking the set of entities.
 6. Themethod of claim 5, wherein the one or more temporal constraints includea global temporal constraint and a local temporal constraint.
 7. Themethod of claim 6, wherein: the global temporal constraint requires thatthe set of connections be restricted within a pre-determined length oftime; and the local temporal constraint requires that the set ofconnections exhibits continuity in time and has one commonly connectedentity.
 8. The method of claim 1, further comprising the step ofgenerating, by an event/relation description generator, a representationof the dynamic event characterizing the dynamic event in terms of atleast one of the entities involved in the dynamic event and the eventitself.
 9. A system for detecting a dynamic relationship and discoveringa dynamic event, comprising: a network communication platform connectedto a network, through which data from a first data source can beobtained; a dynamic relation candidate detector configured foridentifying at least one dynamic relation candidate, each of whichinvolves a plurality of entities, based on temporal properties withrespect to the one or more entities exhibited in the data from the firstdata source; a dynamic relation extractor configured for extractingdynamic relations by corroborating the temporal properties of theentities involved in the at least one dynamic relation candidate withthat of the same entities exhibited in data from a second data source;and a dynamic event detector configured for detecting a dynamic eventthat gives rise to the extracted dynamic relations.
 10. The system ofclaim 9, wherein the dynamic relation candidate detector comprises: atemporal profile generator configured for constructing a first temporalprofile for each entity detected from data of the first data sourcebased on frequencies of occurrences of the entity in time in the datafrom the first source; a temporal peak identifier configured foridentifying one or more peaks in a first temporal profile for eachentity; and a co-peaking detector configured for extracting co-peakingentities, whose first temporal profiles exhibit peaks during a same timeperiod with each other, as entities involved in a dynamic relationcandidate.
 11. The system of claim 9, wherein the dynamic relationextractor comprises: a temporal profile generator configured forconstructing, for each entity involved in a dynamic relation candidate,a second temporal profile based on data from the second source based onfrequencies of occurrences of the entity in time in the data from thesecond data source; a temporal peak identifier configured foridentifying one or more peaks in the second temporal profile for eachentity; a co-peaking detector configured for identifying co-peakingentities, whose second temporal profiles exhibit peaks during a sametime period; a co-occurrence corroboration mechanism configured forconfirming a dynamic relation candidate as a dynamic relation whenco-occurrence of co-peaking temporal property is detected across datafrom both the first and the second data sources; and a dynamic relationrepresentation generator configured for generating a representation foreach such confirmed dynamic relation.
 12. The system of claim 9, whereinthe step of detecting comprises: an event candidate detector configuredfor obtaining a representation of dynamic relations involving aplurality of entities and one or more connections, each of which linkingtwo entities; one or more event consolidation units, each of which isconfigured for enforcing a temporal constraint on the dynamic relationto detect a candidate dynamic event that satisfies the temporalconstraint; and an event identification controller configured foridentifying a dynamic event that gives rise to the dynamic relationsbased on corresponding candidate dynamic event from each eventconsolidation unit, wherein the dynamic event involves a set of entitiesand a set of connections linking the set of entities.
 13. The system ofclaim 9, further comprising an event/relation description generatorconfigured for generating a representation of the dynamic eventcharacterizing the dynamic event in terms of at least one of theentities involved in the dynamic event and the event itself.
 14. Amachine readable non-transitory and tangible medium having informationrecorded thereon for detecting a dynamic relationship and discovering adynamic event, wherein the information, when read by the machine, causesthe machine to perform the following: receiving data from a first datasource; identifying at least one dynamic relation candidate, each ofwhich involves a plurality of entities, based on temporal propertieswith respect to the one or more entities exhibited in the data from thefirst data source; extracting dynamic relations by corroborating thetemporal properties of the entities involved in the at least one dynamicrelation candidate with that of the same entities exhibited in data froma second data source; detecting a dynamic event that gives rise to thedynamic relations among different entities.
 15. The medium of claim 14,wherein the first and second data sources are independent of each other.16. The medium of claim 14, wherein the step of identifying comprisesthe steps of: constructing a first temporal profile for each of theentities identified in the data from the first source based onfrequencies of occurrences of the entity in time in the data from thefirst data source; identifying one or more peaks in a first temporalprofile for each entity; and extracting co-peaking entities, whose firsttemporal profiles exhibit peaks during a same time period with eachother, as entities involved in a dynamic relation candidate.
 17. Themedium of claim 14, wherein the step of extracting comprises the stepsof: constructing, for each entity involved in a dynamic relationcandidate, a second temporal profile based on data from the secondsource based on frequencies of occurrences of the entity in time in thedata from the second data source; identifying one or more peaks in thesecond temporal profile for each entity; identifying co-peakingentities, whose second temporal profiles exhibit peaks during a sametime period; confirming a dynamic relation candidate as a dynamicrelation when co-occurrence of co-peaking temporal property is detectedacross data from both the first and the second data sources; andgenerating a representation for each such confirmed dynamic relation.18. The medium of claim 14, wherein the step of detecting comprises:obtaining a representation of a dynamic relation involving a pluralityof entities and one or more connections, each of which linking twoentities; accessing one or more temporal constraints; and identifying anevent that gives rise to the dynamic relation based on the one or moretemporal constraints and application thereof to the representation,wherein the event involves a set of entities and a set of connectionslinking the set of entities.
 19. The medium of claim 18, wherein the oneor more temporal constraints include a global temporal constraint and alocal temporal constraint, wherein: the global temporal constraintrequires that the set of connections be restricted within apre-determined length of time; and the local temporal constraintrequires that the set of connections exhibits continuity in time and hasone commonly connected entity.
 20. The medium of claim 14, wherein theinformation, when read by the machine, further causes the machine toperform the step of generating a representation of the dynamic eventcharacterizing the dynamic event in terms of at least one of theentities involved in the dynamic event and the event itself.